/*
 * Copyright (C) 2019 MediaTek Inc.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See http://www.gnu.org/licenses/gpl-2.0.html for more details.
 */
#ifndef __BGF_GPS_CFG_REGS_H__
#define __BGF_GPS_CFG_REGS_H__

#define BGF_GPS_CFG_BASE                                       0x80021000

#define BGF_GPS_CFG_BGF_IP_VERSION_ADDR                        (BGF_GPS_CFG_BASE + 0x0010)
#define BGF_GPS_CFG_BGF_IP_CONFIG_ADDR                         (BGF_GPS_CFG_BASE + 0x0014)
#define BGF_GPS_CFG_BGF_OFF_MONFLAG_RD_ADDR                    (BGF_GPS_CFG_BASE + 0x0018)
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR0_ADDR                  (BGF_GPS_CFG_BASE + 0x0020)
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_ADDR                  (BGF_GPS_CFG_BASE + 0x0024)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_CTL_ADDR                    (BGF_GPS_CFG_BASE + 0x0030)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL0_ADDR                   (BGF_GPS_CFG_BASE + 0x0034)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL1_ADDR                   (BGF_GPS_CFG_BASE + 0x0038)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL2_ADDR                   (BGF_GPS_CFG_BASE + 0x003C)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL3_ADDR                   (BGF_GPS_CFG_BASE + 0x0040)
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL4_ADDR                   (BGF_GPS_CFG_BASE + 0x0044)
#define BGF_GPS_CFG_GPS2BT_OFF_SYS_SEL0_ADDR                   (BGF_GPS_CFG_BASE + 0x0048)
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR                     (BGF_GPS_CFG_BASE + 0x0050)
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR                     (BGF_GPS_CFG_BASE + 0x0054)


#define BGF_GPS_CFG_BGF_IP_VERSION_BGFSYS_VERSION_ADDR         BGF_GPS_CFG_BGF_IP_VERSION_ADDR
#define BGF_GPS_CFG_BGF_IP_VERSION_BGFSYS_VERSION_MASK         0xFFFFFFFF
#define BGF_GPS_CFG_BGF_IP_VERSION_BGFSYS_VERSION_SHFT         0

#define BGF_GPS_CFG_BGF_IP_CONFIG_BGFSYS_CONFIG_ADDR           BGF_GPS_CFG_BGF_IP_CONFIG_ADDR
#define BGF_GPS_CFG_BGF_IP_CONFIG_BGFSYS_CONFIG_MASK           0x000000FF
#define BGF_GPS_CFG_BGF_IP_CONFIG_BGFSYS_CONFIG_SHFT           0

#define BGF_GPS_CFG_BGF_OFF_MONFLAG_RD_MON_FLAG_OUT_ADDR       BGF_GPS_CFG_BGF_OFF_MONFLAG_RD_ADDR
#define BGF_GPS_CFG_BGF_OFF_MONFLAG_RD_MON_FLAG_OUT_MASK       0xFFFFFFFF
#define BGF_GPS_CFG_BGF_OFF_MONFLAG_RD_MON_FLAG_OUT_SHFT       0

#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR0_GPS_CR_BUS_AXIBIST_CFG0_ADDR BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR0_ADDR
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR0_GPS_CR_BUS_AXIBIST_CFG0_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR0_GPS_CR_BUS_AXIBIST_CFG0_SHFT 0

#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_31_ADDR BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_ADDR
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_31_MASK 0x80000000
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_31_SHFT 31
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_DONE_ADDR BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_ADDR
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_DONE_MASK 0x40000000
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_DONE_SHFT 30
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_FAIL_ADDR BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_ADDR
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_FAIL_MASK 0x20000000
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS2CONN_AXI_BIST_FAIL_SHFT 29
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_28_0_ADDR BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_ADDR
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_28_0_MASK 0x1FFFFFFF
#define BGF_GPS_CFG_BGF_GPS_AXI_BIST_CR1_GPS_CR_BUS_AXIBIST_CFG1_28_0_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_CTL_CR_GPS2BT_MON_FLAG_EN_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_CTL_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_CTL_CR_GPS2BT_MON_FLAG_EN_OFF_MASK 0x00000001
#define BGF_GPS_CFG_GPS2BT_OFF_MON_CTL_CR_GPS2BT_MON_FLAG_EN_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL0_CR_GPS2BT_MON_FLAG_SEL0_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_SEL0_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL0_CR_GPS2BT_MON_FLAG_SEL0_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL0_CR_GPS2BT_MON_FLAG_SEL0_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL1_CR_GPS2BT_MON_FLAG_SEL1_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_SEL1_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL1_CR_GPS2BT_MON_FLAG_SEL1_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL1_CR_GPS2BT_MON_FLAG_SEL1_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL2_CR_GPS2BT_MON_FLAG_SEL2_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_SEL2_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL2_CR_GPS2BT_MON_FLAG_SEL2_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL2_CR_GPS2BT_MON_FLAG_SEL2_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL3_CR_GPS2BT_MON_FLAG_SEL3_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_SEL3_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL3_CR_GPS2BT_MON_FLAG_SEL3_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL3_CR_GPS2BT_MON_FLAG_SEL3_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL4_CR_GPS2BT_MON_FLAG_SEL4_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_MON_SEL4_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL4_CR_GPS2BT_MON_FLAG_SEL4_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_MON_SEL4_CR_GPS2BT_MON_FLAG_SEL4_OFF_SHFT 0

#define BGF_GPS_CFG_GPS2BT_OFF_SYS_SEL0_CR_GPS2BT_MON_SYS_SEL0_OFF_ADDR BGF_GPS_CFG_GPS2BT_OFF_SYS_SEL0_ADDR
#define BGF_GPS_CFG_GPS2BT_OFF_SYS_SEL0_CR_GPS2BT_MON_SYS_SEL0_OFF_MASK 0xFFFFFFFF
#define BGF_GPS_CFG_GPS2BT_OFF_SYS_SEL0_CR_GPS2BT_MON_SYS_SEL0_OFF_SHFT 0

#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_4_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_4_MASK 0xFFFFFFC0
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_4_SHFT 6
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_3_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_3_MASK 0x00000030
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_3_SHFT 4
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_2_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_2_MASK 0x0000000C
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_2_SHFT 2
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_1_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_1_MASK 0x00000002
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_1_SHFT 1
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_0_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED0_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_0_MASK 0x00000001
#define BGF_GPS_CFG_GPS_CFG_RESERVED0_CR_GPS_CFG_RESERVED0_0_SHFT 0

#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_4_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_4_MASK 0xFFFFFFC0
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_4_SHFT 6
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_3_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_3_MASK 0x00000030
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_3_SHFT 4
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_2_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_2_MASK 0x0000000C
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_2_SHFT 2
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_1_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_1_MASK 0x00000002
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_1_SHFT 1
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_0_ADDR BGF_GPS_CFG_GPS_CFG_RESERVED1_ADDR
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_0_MASK 0x00000001
#define BGF_GPS_CFG_GPS_CFG_RESERVED1_CR_GPS_CFG_RESERVED1_0_SHFT 0

#endif /* __BGF_GPS_CFG_REGS_H__ */

